/**
 * 登录
 */

export interface loginData {
    username: string;   //用户名
    password: string;   //密码
}
/**
 * 密码
 */
export interface password {
    oldPassword: string;    //旧密码
    newPassword: string;    //新密码
}
/**
 * 菜单项
 */
export interface MenuItemProps {
    key?: string,               // 菜单项的唯一标识对应路由名
    type?: any,        // 除了children之外的都可以放进meta中
    label?: any,
    icon?: any,
    hidden?: any,
    roles?: any,
    disabled?: any,
    onClick?: any,
    children?: any                // 子级菜单项对应子路由

}

/**
 * 用户类
 */
export class user {
    counsellorID: string;    //⽤户唯⼀标识（MD5）
    username: string;        //⽤户名
    name: string;            //⽤户姓名
    role: number;            //⽤户类型（0管理员；1咨询师；2督导）
    status: number;          //账户的启⽤状态（0正常；1禁⽤）
    gender: number;          //性别（0男；1⼥）
    age: number;             //年龄
    identityNumber: string;  //身份证号
    phoneNumber: string;     //⼿机号
    lastLogin: string;       //上次登录时间
    avatar: string;          //头像url
    email: string;           //邮箱
    title: string;           //职称
    department: string;      //部⻔
    qualification: string;   //资质
    introduction: string;    //⾃述
    maxConsults: number;     //最⼤咨询数

    constructor(json?: any) {
        if (!json) {
            json = {};
        }
        this.counsellorID = json.counsellorID ? json.counsellorID : '',
            this.username = json.username ? json.username : '',
            this.name = json.name ? json.name : '',
            this.role = json.role ? json.role : '',
            this.status = json.status ? json.status : 0,
            this.gender = json.gender ? json.gender : 0,
            this.age = json.age ? json.age : 0,
            this.identityNumber = json.identityNumber ? json.identityNumber : '',
            this.phoneNumber = json.phoneNumber ? json.phoneNumber : '',
            this.lastLogin = json.lastLogin ? json.lastLogin : '',
            this.avatar = json.avatar ? json.avatar : '',
            this.email = json.email ? json.email : '',
            this.title = json.title ? json.title : '',
            this.department = json.department ? json.department : '',
            this.qualification = json.qualification ? json.qualification : '',
            this.introduction = json.introduction ? json.introduction : '',
            this.maxConsults = json.maxConsults ? json.maxConsults : 0
    }

}
/**
 * 咨询记录搜索参数
 */
export interface recordSearch {
    page?: number,
    size?: number,
    cname?: string,
    vname?: string,
    startTime?: number,
    endTime?: number


}

/**
 * 咨询记录
 */
export interface recordData {
    conversationID?: number;  //会话id
    counsellorName?: string; //咨询师姓名
    visitorName?: string;    //访客姓名
    startTime?: string;        //开始时间
    endTime?: string;          //结束时间
    duration?: string;          //时长
    rating?: number;         //评级
    evaluation?: string;     //评价

}

/**
 * 督导绑定
 */
export interface bindSearch{
    counsellorID?:string;
    bindingID?: number;
    supervisorID?: string;
    name?: string;
}

/**
 * 信息记录
 */
export interface recordMessage {
    uesr: string;       //发送方
    message: string;     // 信息
}

/**
 * 分页获取列表参数
 */
export interface userList {
    page: number;
    size: number;
    role: number;
    name: string;
}

/**
 * 我不知道
 */
export interface onlineList {
    // 页码（从0开始）
    page: number

    //一页的大小（可以将page调大，不分页获取所有用户列表，但请注意浏览器内存占用情况）
    size: number

    //用户类型（0表示获取全部用户信息；1表示只获取咨询师用户信息；2表示只获取督导用户信息）
    role: number

    // 用户姓名（模糊查询）
    name: string
}